home *** CD-ROM | disk | FTP | other *** search
- /////////////////////\\\\\\\\\\\\\\\\\\\\\\\
- Dokumentation zur FIDO Unit FKBD
- \\\\\\\\\\\\\\\\\\\\\///////////////////////
-
- RELEASE 1.03
- ^^^^^^^^^^^^
-
- =========================================================================
- Autor: Orazio Czerwenka, 2:2450/540.55 @ FidoNet, St.Augustin, 13.07.1994
- =========================================================================
-
- 1. Ersatzroutinen und Erweiterungen für CRTs Keyboard-Routinen
- --------------------------------------------------------------
-
- Die Unit FKBD stellt teilweise Ersatzroutinen für TPs Unit
- CRT zur Verfügung, sowie Routinen zur Funktionserweiterung
- dieser Standardunit hinsichtlich der Benutzung der Tastatur.
-
-
- !!! WICHTIG !!!
-
- **************************************************************
- Wenn diese Unit overlay-fähig kompiliert werden sollte (s.auch
- FCONDEF.INC), muß sie zu Beginn eines Programmes durch Aufruf
- der Prozedur (!!!) InitFKBD (!!!) initialisiert werden.
-
- Standardmäßig ist dies nicht der Fall.
-
- Beim gleichzeitigen Gebrauch der Units CRT, FCRT und FKBD in
- eigenen Programmen muß in der USES-Anweisung des Hauptpro-
- grammes unbedingt die folgende Reihenfolge eingehalten werden:
-
- USES
- CRT, FCRT, FKBD;
-
- Wird diese Reihenfolge nicht eingehalten, ist ein fehlerloses
- Zusammenspiel der in diesen Units enthaltenen Routinen _NICHT_
- gewährleistet.
- **************************************************************
-
-
- !!! HAFTUNGS- UND GARANTIEAUSSCHLUß !!!
- ┌────────────────────────────────────────────────────────────────┐
- │ Es wird dringend davon abgeraten von in der Unit oder evtl.│
- │ include files enthaltenen Routinen in eigenen Programmen Ge- │
- │ brauch zu machen, wenn diese nicht in der Kurzbeschreibung ge- │
- │ nannt sind. │
- │ │
- │ Für die Richtigkeit der Beschreibungen zu den in der hier │
- │ dokumentierten Unit und evtl. include files enthaltenen │
- │ Routinen wird keine Gewähr gegeben. Fehlerhafte Beschreibungen │
- │ und/oder ein fehlerhaftes Verhalten einer Routine, bitte dem │
- │ jeweils aktuellen Leiter der Unit oder evtl. include files │
- │ melden. │
- │ │
- │ Die Benutzung der hier vorgestellten Routinen geschieht in je- │
- │ der Hinsicht AUF EIGENE GEFAHR. │
- └────────────────────────────────────────────────────────────────┘
-
-
-
- 2. Kurzbeschreibung:
- --------------------
-
- Die hier vorgestellten Routinen soweit namens- und funktions-
- gleich mit denen der TP Standard-Unit CRT werden _nur_ in der
- Kurzbeschreibung genannt. Nähere Informationen sind dem Hand-
- buch oder der Online-Hilfe zu entnehmen.
-
- AltPressed .......... liefert zurück, ob einer der ALT-Keys
- gedrückt wurde
- CapsActive .......... gibt an, ob CAPS eingerastet ist
- CapsPressed ......... gibt an, ob CAPS gedrückt wurde
- Char2Kbd ............ schreibt einen Char in den Tastatur-Puf-
- fer
- ClrKbd .............. löscht den TastaturPuffer
- CtrlPressed ......... gibt an, ob einer der CTRL-Keys gedrückt
- wurde
- DisableExtendedKeys . stellt die CRT-Kompatibilität der Read-
- und Peek-Routinen sicher
- EnableExtendedKeys .. zum Teufel mit der CRT-Kompatibilität
- EnhancedKbdPresent .. auf 102er-Tastatur prüfen
- ExtendedKeysAllowed . zur Abfrage der CRT-Kompatibilität
- InsActive ........... gibt an, ob die INS-Taste eingeschaltet
- ist
- InsPressed .......... gibt an, ob die INS-Taste gedrückt wurde
- KeyPressed .......... RTFM, jedoch mit optionaler Unter-
- stützung von ExtendedKeys
- LeftAltPressed ...... gibt an, ob die linke ALT-Taste gedrückt
- wurde
- LeftCtrlPressed ..... gibt an, ob die linke CTRL-Taste ge-
- drückt wurde
- LeftShiftPressed .... gibt an, ob die linke SHIFT-Taste ge-
- drückt wurde
- NumActive ........... gibt an, ob NUM aktiv ist
- NumPressed .......... gibt an, ob NUM gedrückt wurde
- PeekKey ............. liest einen Char aus dem Tastaturpuffer
- ohne ihn zu löschen
- PeekKeyWord ......... liest ein Word aus dem Tastaturpuffer
- ohne es zu löschen
- ReadKey ............. RTFM, jedoch mit optionaler Unterstütz-
- ung von ExtendedKeys
- ReadKeyWord ......... wie ReadKey, liest jedoch gleichzeitig
- ASCII- und ScanCode-Byte in Form eines
- Words aus
- RightAltPressed ..... gibt an, ob die rechte ALT-Taste ge-
- drückt wurde
- RightCtrlPressed .... gibt an, ob die rechte CTRL-Taste ge-
- drückt wurde
- RightShiftPressed ... gibt an, ob die rechte SHIFT-Taste ge-
- drückt wurde
- ScrlActive .......... gibt an, ob die SCROLL-Taste aktiv ist
- ScrlPressed ......... gibt an, ob die SCROLL-Taste gedrückt
- wurde
- ShiftPressed ........ gibt an, ob eine der beiden SHIFT-
- Tasten gedrückt wurde
- Word2Kbd ............ schreibt ein Word in den Tastaturpuffer
-
-
-
- 3. Detaillierte Beschreibung:
- -----------------------------
-
- ===============================================================
- ALTPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Max Maischein, 2:244/1106.17 @ FidoNet
-
- ERSTDATUM ... ??.??.199? LETZTE ÄNDERUNG ... ??.??.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob eine der beiden ALT-Tasten ge-
- drückt wurde
-
- DEKLARATION ... function ALTPressed : Boolean;
-
- ERGEBNIS ... TRUE - ALT-Taste wurde gedrückt
- FALSE - ALT-Taste wurde nicht gedrückt
-
-
- ===============================================================
- CapsActive
- ---------------------------------------------------------------
- ERSTAUTOR ... Max Maischein, 2:244/1106.17 @ FidoNet
-
- ERSTDATUM ... ??.??.199? LETZTE ÄNDERUNG ... ??.??.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob die CAPS-Taste eingerastet ist
-
- DEKLARATION ... function CapsActive : Boolean;
-
- ERGEBNIS ... TRUE - CAPS-Taste ist eingerastet
- FALSE - CAPS-Taste ist nicht eingerastet
-
-
- ===============================================================
- CapsPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Max Maischein, 2:244/1106.17 @ FidoNet
-
- ERSTDATUM ... ??.??.199? LETZTE ÄNDERUNG ... ??.??.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob die CAPS-Taste gedrückt wurde
-
- DEKLARATION ... function CapsPressed : Boolean;
-
- ERGEBNIS ... TRUE - CAPS-Taste wurde gedrückt
- FALSE - CAPS-Taste wurde nicht gedrückt
-
-
- ===============================================================
- Char2KBD
- ---------------------------------------------------------------
- ERSTAUTOR ... Borland
-
- ERSTDATUM ... ??.??.199? LETZTE ÄNDERUNG ... 05.01.1994
-
- MODIFIKATION ... Orazio Czerwenka
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... schreibt den ASCII und ScanCode eines Chars
- in den Tastaturpuffer
-
- DEKLARATION ... procedure Char2KBD (ch:char;code:byte);
-
- PARAMETER ... ch - der zu schreibende Char, #0 für exten-
- ded keys
- code - 0 für normale ASCIIs, ansonsten der
- ScanCode eines extended keys
-
-
- ===============================================================
- ClrKBD
- ---------------------------------------------------------------
- ERSTAUTOR ... Borland
-
- ERSTDATUM ... ??.??.199? LETZTE ÄNDERUNG ... 01.07.1994
-
- MODIFIKATION ... Orazio Czerwenka
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... löscht den Tastaturpuffer
-
- DEKLARATION ... procedure ClrKBD;
-
-
- ===============================================================
- CtrlPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Max Maischein, 2:244/1106.17 @ FidoNet
-
- ERSTDATUM ... ??.??.199? LETZTE ÄNDERUNG ... ??.??.199?
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... gibt an, ob eine der beiden CTRL-Tasten ge-
- drückt wurde
-
- DEKLARATION ... function CtrlPressed : Boolean;
-
- ERGEBNIS ... TRUE - CTRL-Taste wurde gedrückt
- FALSE - CTRL-Taste wurde nicht gedrückt
-
-
- ===============================================================
- DisableExtendedKeys
- ---------------------------------------------------------------
- ERSTAUTOR ... Orazio Czerwenka, 2:2450/540.55 @ FidoNet
-
- ERSTDATUM ... 01.07.1994 LETZTE ÄNDERUNG ... 01.07.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... stellt die CRT-Kompatibilität der Read- und
- Peek-Routinen sicher
-
- DEKLARATION ... procedure DisableExtendedKeys;
-
-
- ===============================================================
- EnableExtendedKeys
- ---------------------------------------------------------------
- ERSTAUTOR ... Orazio Czerwenka, 2:2450/540.55 @ FidoNet
-
- ERSTDATUM ... 01.07.1994 LETZTE ÄNDERUNG ... 01.07.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... verzichtet auf CRT-Kompatibilität zugunsten
- einer Unterstützung der MFII-Tastatur-Scan-
- Codes (zB F11/F12), die nicht mit denen der
- normalen XT-Tastatur übereinstimmen
-
- DEKLARATION ... procedure EnableExtendedKeys;
-
-
- ===============================================================
- EnhancedKBDPresent
- ---------------------------------------------------------------
- ERSTAUTOR ... Max Maischein, 2:244/1106.17 @ FidoNet
-
- ERSTDATUM ... ??.??.19?? LETZTE ÄNDERUNG ... 01.07.1994
-
- MODIFIKATION ... Orazio Czerwenka
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob eine erweiterte Tastatur zur
- Verfügung steht
-
- DEKLARATION ... function EnhancedKBDPresent : Boolean;
-
- ERGEBNIS ... TRUE - erweiterte Tastatur
- FALSE - keine erweiterte Tastatur
-
-
- ===============================================================
- ExtendedKeysAllowed
- ---------------------------------------------------------------
- ERSTAUTOR ... Orazio Czerwenka, 2:2450/540.55 @ FidoNet
-
- ERSTDATUM ... 01.07.1994 LETZTE ÄNDERUNG ... 01.07.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob für die Read- und Peek-Routinen
- extended key support zur Verfügung gestellt
- wurde
-
- DEKLARATION ... function ExtendedKeysAllowed : Boolean;
-
- ERGEBNIS ... TRUE - extended key support, nicht CRT-kom-
- patibel
- FALSE - kein extended key support, somit
- CRT-kompatibel
-
-
- ===============================================================
- InsActive
- ---------------------------------------------------------------
- ERSTAUTOR ... Max Maischein, 2:244/1106.17 @ FidoNet
-
- ERSTDATUM ... ??.??.19?? LETZTE ÄNDERUNG ... ??.??.19??
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob der INS-Key aktiv ist
-
- DEKLARATION ... function InsActive : Boolean;
-
- ERGEBNIS ... TRUE - INS-Key aktiv
- FALSE - INS-Key nicht aktiv
-
-
- ===============================================================
- InsPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Max Maischein, 2:244/1106.17 @ FidoNet
-
- ERSTDATUM ... ??.??.19?? LETZTE ÄNDERUNG ... ??.??.19??
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob der INS-Key gedrückt wurde
-
- DEKLARATION ... function InsPressed : Boolean;
-
- ERGEBNIS ... TRUE - INS-Key wurde gedrückt
- FALSE - INS-Key wurde nicht gedrückt
-
-
- ===============================================================
- LeftAltPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Orazio Czerwenka, 2:2450/540.55 @ FidoNet
-
- ERSTDATUM ... 03.07.1994 LETZTE ÄNDERUNG ... 03.07.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob die linke ALT-Taste gedrückt
- wurde
-
- DEKLARATION ... function LeftAltPressed : Boolean;
-
- ERGEBNIS ... TRUE - linke ALT-Taste wurde gedrückt
- FALSE - linke ALT-Taste wurde nicht gedrückt
-
-
- ===============================================================
- LeftCtrlPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Orazio Czerwenka, 2:2450/540.55 @ FidoNet
-
- ERSTDATUM ... 03.07.1994 LETZTE ÄNDERUNG ... 03.07.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob die linke CTRL-Taste gedrückt
- wurde
-
- DEKLARATION ... function LeftCtrlPressed : Boolean;
-
- ERGEBNIS ... TRUE - linke CTRL-Taste wurde gedrückt
- FALSE - linke CTRL-Taste wurde nicht gedrückt
-
-
- ===============================================================
- LeftShiftPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Orazio Czerwenka, 2:2450/540.55 @ FidoNet
-
- ERSTDATUM ... 03.07.1994 LETZTE ÄNDERUNG ... 03.07.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob die linke SHIFT-Taste gedrückt
- wurde
-
- DEKLARATION ... function LeftShiftPressed : Boolean;
-
- ERGEBNIS ... TRUE - linke SHIFT-Taste wurde gedrückt
- FALSE - linke SHIFT-Taste wurde nicht
- gedrückt
-
-
- ===============================================================
- NumActive
- ---------------------------------------------------------------
- ERSTAUTOR ... Max Maischein, 2:244/1106.17 @ FidoNet
-
- ERSTDATUM ... ??.??.19?? LETZTE ÄNDERUNG ... ??.??.19??
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob NUM-Key aktiv ist
-
- DEKLARATION ... function NumActive : Boolean;
-
- ERGEBNIS ... TRUE - NUM-Key ist aktiv
- FALSE - NUM-Key ist nicht aktiv
-
-
- ===============================================================
- NumPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Max Maischein, 2:244/1106.17 @ FidoNet
-
- ERSTDATUM ... ??.??.19?? LETZTE ÄNDERUNG ... ??.??.19??
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob NUM-Key gedrückt wurde
-
- DEKLARATION ... function NumPressed : Boolean;
-
- ERGEBNIS ... TRUE - NUM-Key wurde gedrückt
- FALSE - NUM-Key wurde nicht gedrückt
-
-
- ===============================================================
- PeekKey
- ---------------------------------------------------------------
- ERSTAUTOR ... Martin Austermeier, 2:2407/109.15 @ FidoNet
-
- ERSTDATUM ... ??.??.19?? LETZTE ÄNDERUNG ... 03.07.1994
-
- MODIFIKATION ... Orazio Czerwenka
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... liest einen Char aus dem Tastaturpuffer, ohne
- ihn dort zu entfernen
-
- DEKLARATION ... function PeekKey : Char;
-
- ERGEBNIS ... der nächste Char des Tastaturpuffers
-
-
- ===============================================================
- PeekKeyWord
- ---------------------------------------------------------------
- ERSTAUTOR ... Martin Austermeier, 2:2407/109.15 @ FidoNet
-
- ERSTDATUM ... ??.??.19?? LETZTE ÄNDERUNG ... 03.07.1994
-
- MODIFIKATION ... Orazio Czerwenka
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... liest ein Word aus dem Tastaturpuffer, ohne
- ihn dort zu entfernen
-
- DEKLARATION ... function PeekKeyWord: Word;
-
- ERGEBNIS ... das nächste Word des Tastaturpuffers
-
-
- ===============================================================
- ReadKeyWord
- ---------------------------------------------------------------
- ERSTAUTOR ... Martin Austermeier, 2:2407/109.15 @ FidoNet
-
- ERSTDATUM ... ??.??.19?? LETZTE ÄNDERUNG ... 01.07.1994
-
- MODIFIKATION ... Orazio Czerwenka
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... funktionsgleich zu ReadKey, liest jedoch ein
- Word statt eines Chars aus dem Tastaturpuffer
- und entfernt es von dort
-
- DEKLARATION ... function ReadKeyWord: Word;
-
- ERGEBNIS ... das nächste Word des Tastaturpuffers
-
-
- ===============================================================
- RightAltPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Orazio Czerwenka, 2:2450/540.55 @ FidoNet
-
- ERSTDATUM ... 03.07.1994 LETZTE ÄNDERUNG ... 03.07.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob die rechte ALT-Taste gedrückt
- wurde
-
- DEKLARATION ... function RightAltPressed : Boolean;
-
- ERGEBNIS ... TRUE - rechte ALT-Taste wurde gedrückt
- FALSE - rechte ALT-Taste wurde nicht gedrückt
-
-
- ===============================================================
- RightCtrlPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Orazio Czerwenka, 2:2450/540.55 @ FidoNet
-
- ERSTDATUM ... 03.07.1994 LETZTE ÄNDERUNG ... 03.07.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob die rechte CTRL-Taste gedrückt
- wurde
-
- DEKLARATION ... function RightCtrlPressed : Boolean;
-
- ERGEBNIS ... TRUE - rechte CTRL-Taste wurde gedrückt
- FALSE - rechte CTRL-Taste wurde nicht
- gedrückt
-
-
- ===============================================================
- RightShiftPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Orazio Czerwenka, 2:2450/540.55 @ FidoNet
-
- ERSTDATUM ... 03.07.1994 LETZTE ÄNDERUNG ... 03.07.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob die rechte SHIFT-Taste gedrückt
- wurde
-
- DEKLARATION ... function RightShiftPressed : Boolean;
-
- ERGEBNIS ... TRUE - rechte SHIFT-Taste wurde gedrückt
- FALSE - rechte SHIFT-Taste wurde nicht
- gedrückt
-
-
- ===============================================================
- ScrlActive
- ---------------------------------------------------------------
- ERSTAUTOR ... Max Maischein, 2:244/1106.17 @ FidoNet
-
- ERSTDATUM ... ??.??.19?? LETZTE ÄNDERUNG ... ??.??.19??
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob SCROLL-Key aktiv ist
-
- DEKLARATION ... function ScrlActive : Boolean;
-
- ERGEBNIS ... TRUE - SCROLL-Key ist aktiv
- FALSE - SCROLL-Key ist nicht aktiv
-
-
- ===============================================================
- ScrlPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Max Maischein, 2:244/1106.17 @ FidoNet
-
- ERSTDATUM ... ??.??.19?? LETZTE ÄNDERUNG ... ??.??.19??
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob SCROLL-Key gedrückt wurde
-
- DEKLARATION ... function ScrlPressed : Boolean;
-
- ERGEBNIS ... TRUE - SCROLL-Key wurde gedrückt
- FALSE - SCROLL-Key wurde nicht gedrückt
-
-
- ===============================================================
- ShiftPressed
- ---------------------------------------------------------------
- ERSTAUTOR ... Orazio Czerwenka, 2:2450/540 @ FidoNet
-
- ERSTDATUM ... 03.07.1994 LETZTE ÄNDERUNG ... 03.07.1994
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... überprüft, ob eine der beiden SHIFT-Tasten
- gedrückt wurde
-
- DEKLARATION ... function ShiftPressed : Boolean;
-
- ERGEBNIS ... TRUE - SHIFT wurde gedrückt
- FALSE - SHIFT wurde nicht gedrückt
-
-
- ===============================================================
- Word2KBD
- ---------------------------------------------------------------
- ERSTAUTOR ... Borland
-
- ERSTDATUM ... ??.??.199? LETZTE ÄNDERUNG ... 03.07.1994
-
- MODIFIKATION ... Orazio Czerwenka
- ---------------------------------------------------------------
-
- BESCHREIBUNG ... schreibt den ASCII und ScanCode eines Chars
- als Word in den Tastaturpuffer
-
- DEKLARATION ... procedure Word2KBD (w:Word);
-
- PARAMETER ... w - ein Word, das den ASCII und Scancode
- eines Chars als Lo und Hi enthält
-
-
-
-
- 4. Beispiele:
- -------------
-
- ===============================================================
-
- ---------------------------------------------------------------
-
- Die Beispiele zum sinnvollen Gebrauch der hier dokumentierten
- Routinen werden zu einem späteren Zeitpunkt nachgereicht.
- Aus Zeitgründen konnte dieser Teil der Dokumentation vorläufig
- nicht realisiert werden.
-
- Wer Anwendungsbeispiele zu der ein oder anderen hier vorge-
- stellten Routine zur Dokumentation beitragen oder die weitere
- Bearbeitung der Dokumentationsdatei dieser Unit in Zusammen-
- arbeit mit dem jeweiligen Leiter dieser Unit übernehmen, bzw.
- diese in andere Sprachen übersetzen möchte, ist herzlich ein-
- geladen, sich per NM bei diesem zu melden.
-
-
-
-
- ==========================================================================
-
- //////////////////////\\\\\\\\\\\\\\\\\\\\\\\
- Ende der Dokumentation zur FIDO Unit FKB
- \\\\\\\\\\\\\\\\\\\\\\///////////////////////
-